// components/like/index.js
Component({
  /**
   * 组件的属性列表
   */
  properties: {
    like: {
      type: Boolean,
      value: false,
      observer: function(){

      }
    },
    count: {
      type: Number,
      value: 0,
      observer: function(){

      }
    },
    readOnly:{
      type:Boolean
    }
  },

  /**
   * 组件的初始数据
   */
  data: {
    // 数据绑定
    yesSrc: 'images/like.png',
    noSrc: 'images/like@dis.png'
  },

  /**
   * 组件的方法列表
   */
  methods: {
    onLike: function(event){
      //如果like设置为只读，点击喜欢就不会切换红心状态
      if(this.properties.readOnly){
        return;
      }
      // 用this就可以获取到properties里的属性
      let like = this.properties.like;
      let count = this.properties.count;
      count=like?count-1:count+1;
      this.setData({
        count: count,
        like: !like
      })
      //激活
      let behavior = this.properties.like?'like':'cancel';
      /**
       * 第一个参数：自定义事件的名称
       * 第二个参数：事件的detail属性
       * 第三个参数一般不使用
       */
      this.triggerEvent('like',{
        behavior: behavior
      },{});
    }
  }
})
